In some communications networks, user devices (e.g., smartphones, computers, mobile handsets, or other user equipment (UE)) may act as application clients by requesting information from one or more application servers. Some application servers may be located in a private network or environment. As such, these application servers may communicate with application clients (e.g., user devices) in other networks, such as the Internet, via a network address translator (NAT), a firewall, a customer premise equipment (CPE) router, or a proxy server.
Conventionally, application servers send keep alive traffic to firewalls or NATs so that ports on these devices remain open for receiving incoming traffic. For example, a firewall may be configured to keep a port open if a message is received every few minutes. In this example, an application server may frequently send messages to guarantee that the port is open for incoming traffic from application clients.
Port control protocol (PCP), which is currently under heavy development, is intended to enable application servers to run in private environments (e.g., behind a NAT). PCP is discussed in an IETF draft document entitled “Port Control Protocol (PCP) draft-ietf-pcp-base-26d” dated Jun. 5, 2012, the disclosure of which is incorporated by reference herein in its entirety. PCP can be used to control how incoming packets are forwarded by upstream devices, such as a NAT or a firewall, and to reduce and optimize keep alive traffic. For example, a PCP client component may be communicatively coupled to an application server, such as a web server or a hypertext transfer protocol (HTTP) server. A PCP server component may be communicatively coupled to a firewall or a NAT. Using PCP signaling between the PCP client and PCP server, an application server may negotiate a public IP and port for receiving incoming traffic via the NAT or firewall. Using PCP-negotiated information, the firewall or NAT is capable of sending incoming application traffic to the application server and sending outgoing application traffic from the application server.
While PCP may be useful in facilitating communication between application clients and an application server behind a NAT or a firewall, network equipment simulation and/or testing platforms add further complexity. For example, to properly test a PCP-controllable device, a testing platform may be capable of simulating or emulating a PCP client component, an application server, one or more application clients, and related signaling between such components and the network equipment being tested.
Accordingly, in light of these difficulties, a need exists for methods, systems, and computer readable media for providing mapping information associated with PCP in a test environment.